package com.api.aiyh_pcn.patentWall.dao;

import java.util.List;
import java.util.Map;

import aiyh.utils.Util;
import aiyh.utils.zwl.common.ToolUtil;
import weaver.conn.RecordSet;

/**
 * @author EBU7-dev1-ayh
 * @create 2021/11/25 0025 15:28
 */

public class PatentWallMapping {
    private final ToolUtil toolUtil = new ToolUtil();

    public List<Map<String, Object>> getAllList(String tableName) {
        RecordSet rs = new RecordSet();
        String query = "select * from " + tableName;
        rs.executeQuery(query);
        return Util.recordSet2MapList(rs);
    }

    public List<Map<String, Object>> getListByFilterWhere(StringBuilder whereBuilder, List<String> args,
        String tableName) {
        RecordSet rs = new RecordSet();
        String query = "select * from " + tableName + whereBuilder.toString().replace(" where  add ", " where ");
        rs.executeQuery(query, args);
        toolUtil.writeDebuggerLog(String.format("执行SQL： {%s} ---> 参数： {%s}", query, args));
        return Util.recordSet2MapList(rs);
    }

    public List<Map<String, Object>> getSelectOptions(String dataResource, String dbFieldName) {
        RecordSet rs = new RecordSet();
        String query = "select wbf.id,wbf.fieldname,wbf.fieldlabel,wb.tablename, " + "ws.selectname,ws.selectvalue "
            + "from workflow_billfield wbf " + "left join workflow_bill wb on wbf.billid = wb.id "
            + "left join workflow_selectitem ws on ws.fieldid = wbf.id " + "where wb.tablename = ? and fieldname = ? ";
        rs.executeQuery(query, dataResource, dbFieldName);
        toolUtil
            .writeDebuggerLog(String.format("执行SQL： {%s} ---> 参数： {%s}", query, dataResource + " -- " + dbFieldName));
        return Util.recordSet2MapList(rs);
    }
}
